package com.pti.usermanager.service.api;

import com.github.pagehelper.PageInfo;
import com.pti.usermanager.dao.po.MenuPo;
import com.pti.usermanager.dao.po.PostPo;
import com.pti.usermanager.web.dto.request.SaveMenuRequest;
import com.pti.usermanager.web.dto.request.UpdateMenuRequest;
import com.pti.usermanager.web.dto.response.ResultResponse;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassName: MenuService
 * @Author: liuyueyang
 * @Description: 菜单业务层
 * @Date: 2019/1/18
 */
public interface MenuService {

      /**
       * create by: dongzhipeng
       * description:菜单树结构接口
       * create time: 17:15 2019/1/26
       *
       * @Param:
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse findTreeByMenu();
      /**
       * create by: dongzhipeng
       * description:菜单详情接口
       * create time: 17:16 2019/1/26
       *
       * @Param: menuId
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse findAllByMenuId(Long menuId);
      /**
       * create by: dongzhipeng
       * description:根据菜单名称查详情接口
       * create time: 17:18 2019/1/26
       *
       * @Param: menuNm
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse findAll(String menuNm);
      /**
       * create by: dongzhipeng
       * description:添加菜单接口
       * create time: 17:21 2019/1/26
       *
       * @Param: saveMenuRequest
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse saveMenu(SaveMenuRequest saveMenuRequest);
      /**
       * create by: dongzhipeng
       * description:修改菜单接口
       * create time: 17:21 2019/1/26
       *
       * @Param: updateMenuRequest
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse updateMenu(UpdateMenuRequest updateMenuRequest);
      /**
       * create by: dongzhipeng
       * description:删除菜单接口
       * create time: 17:23 2019/1/26
       *
       * @Param: menuId
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse delMenu(Long menuId);
      /**
       * create by: mahuilin
       * description:根据用户ID查询菜单详情接口
       * create time: 9:12 2019/2/25
       *
       * @Param: usrId
       * @return com.pti.usermanager.web.dto.response.ResultResponse
       */
      ResultResponse findAllByUsrId( Long usrId);

}
